package com.team.cloudsharing.controller.folder;

import org.springframework.http.ResponseEntity;

import com.team.cloudsharing.dto.Folder;
import com.team.cloudsharing.dto.FolderInformation;
import com.team.cloudsharing.dto.Message;
import com.team.cloudsharing.dto.PathDTO;

public interface FolderController {
	public ResponseEntity<Message> createFolder(Folder folder);
	
	public ResponseEntity<Message> moveFolderToTrash(Folder folder);
	
	public ResponseEntity<Message> restoreFolderFromTrash(Folder folder);
	
	public ResponseEntity<Message> restoreFolderWithFolderParent(Folder folder);
	
	public ResponseEntity<Message> deleteFolder(Folder folder);
	
	public ResponseEntity<Message> moveFolderToAnotherFolder(PathDTO pathDTO);
	
	public ResponseEntity<Message> renameFolder(PathDTO pathDTO);
	
	public ResponseEntity<FolderInformation> getFolderInformation(String userEmail, String folderPath);
	
	public ResponseEntity<String> getFolderUrlByFolderId(String folderId);
	
	public ResponseEntity<Folder> getFolderInformationById(String folderId);
	
	public ResponseEntity<Folder> downloadFolder(String folderUrl);
}
